/**
 * 初始化司机管理详情对话框
 */
var TDriverInfoDlg = {
    tDriverInfoData : {},
    validateFields: {
        driverName: {
            validators: {
                notEmpty: {
                    message: '司机名称不能为空'
                }
            }
        }
        // carNo: {
        //     validators: {
        //         notEmpty: {
        //             message: '车牌不能为空'
        //         }
        //     }
        // },
        // driverCard: {
        //     validators: {
        //         notEmpty: {
        //             message: '身份证不能为空'
        //         },
        //         regexp:{
        //             regexp: /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/,
        //             message: '身份证格式错误'
        //         }
        //     }
        // },
        // phone: {
        //     validators: {
        //         notEmpty: {
        //             message: '电话不能为空'
        //         },
        //         regexp:{
        //             regexp: /^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/,
        //             message: '电话号码格式错误'
        //         }
        //     }
        // }

    }
};
/**
 * 验证数据是否为空
 */
TDriverInfoDlg.validate = function () {
    $('#driverFrom').data("bootstrapValidator").resetForm();
    $('#driverFrom').bootstrapValidator('validate');
    return $("#driverFrom").data('bootstrapValidator').isValid();
};

/**
 * 清除数据
 */
TDriverInfoDlg.clearData = function() {
    this.tDriverInfoData = {};
}

/**
 * 设置对话框中的数据
 *
 * @param key 数据的名称
 * @param val 数据的具体值
 */
TDriverInfoDlg.set = function(key, val) {
    this.tDriverInfoData[key] = (typeof val == "undefined") ? $("#" + key).val() : val;
    return this;
}

/**
 * 设置对话框中的数据
 *
 * @param key 数据的名称
 * @param val 数据的具体值
 */
TDriverInfoDlg.get = function(key) {
    return $("#" + key).val();
}

/**
 * 关闭此对话框
 */
TDriverInfoDlg.close = function() {
    parent.layer.close(window.parent.TDriver.layerIndex);
}

/**
 * 收集数据
 */
TDriverInfoDlg.collectData = function() {
    this
    .set('driverName')
    .set('id')
    .set('carNo')
    .set('driverCard')
    .set('phone')
    ;
}

/**
 * 提交添加
 */
TDriverInfoDlg.addSubmit = function() {

    this.clearData();
    this.collectData();
    if (!this.validate()) {
        return;
    }

    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/tDriver/add", function(data){
        Feng.success("添加成功!");
        window.parent.TDriver.table.refresh();
        TDriverInfoDlg.close();
    },function(data){
        Feng.error("添加失败!" + data.responseJSON.message + "!");
    });
    ajax.set(this.tDriverInfoData);
    ajax.start();
}

/**
 * 提交修改
 */
TDriverInfoDlg.editSubmit = function() {

    this.clearData();
    this.collectData();
    if (!this.validate()) {
        return;
    }

    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/tDriver/update", function(data){
        Feng.success("修改成功!");
        window.parent.TDriver.table.refresh();
        TDriverInfoDlg.close();
    },function(data){
        Feng.error("修改失败!" + data.responseJSON.message + "!");
    });
    ajax.set(this.tDriverInfoData);
    ajax.start();
}

$(function() {
    Feng.initValidator("driverFrom", TDriverInfoDlg.validateFields);
});
